##Project Euler 31 solver
coins = [200, 100, 50, 20, 10, 5, 2, 1]

def make_amt(max, coin):
	if (coin >= len(coins)):
		return 0
	cnt = 0
	num = 0
	while (num * coins[coin] < max):
		cnt += make_amt(max-(num*coins[coin]), coin+1)
		num+=1
	if (num*coins[coin] == max):
		cnt +=1 
	return cnt
	
print (make_amt(200, 0))